#ifndef SPTTASK_H
#define SPTTASK_H



namespace spt
{

	class Task
	{
	public:
		Task(const char *Name,uint32 StackSize, uint32 Priority,uint32 MinPeriodMs);
	public:
		void Start();
	public:

	protected:
		virtual void RunLoop();
		virtual void OneLoop();
	private:
		uint32 step;
		uint32 stackSize;
		uint32 priority;
		uint32 minPeriodMs;
		handle hdl;
	private:
		static void SptTaskLoop(void* Ptr);
	};



}

#endif
